home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 13
/
Tiger_Disk_013_19xx_Tiger-Crew-Disk_de_Side_B.d64
/
lektion 3
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
5KB
|
167 lines
1 rem**********************************
2 rem*--------- lektion 3 ------------*
3 rem*--------------------------------*
4 rem*---- (w) by arno freisinger ----*
5 rem*--------------------------------*
6 rem*----------- in 1987 ------------*
7 rem*--------------------------------*
8 rem*------- -----------*
9 rem**********************************
10 poke 53280 , 11 : poke 53281 , 11 : print "[155]" : poke 2050 , 1
15 sys 42291 : poke 46 , peek (35) : poke 45 , peek (781) + 2 : clr
20 print"[147]"tab(15)"teachmaster"
30 print""tab(09)"(w) by arno freisinger"
40 print""tab(10)" "
50 for i = 1 to 2000 : next
60 print"[147]"tab(15)"lektion 3"
70 for i = 1 to 1000 : next
100 print"[147]im letzten kurs haben wir die ersten"
110 print"befehle kennengelernt."
120 print"ldx = laden ins x-register"
130 print"ldy = laden ins y-register"
140 print"lda = laden in den akku"
150 print"diese befehle sind vergleichbar mit dem"
160 print"basic-befehl peek.jetzt lernen wir den"
170 print"poke kennen."
180 print"sta = akku inhalt in eine speicherstelle"
190 print"schreiben."
200 print""tab(14)"taste druecken"
210 print""tab(18)"-1-"
220 gosub 250
230 on a goto 300 , 60
247 rem
248 rem --tasten abfrage-
249 rem
250 get a$ : if a$ = "" then 250
260 if a$ = "z" then a = 2 : return
270 a = 1 : return
297 rem
298 rem -- seite 2 --
299 rem
300 print"[147]stx = schreibe x-registerinhalt in eine"
310 print"speicherstelle."
320 print"sty = schreibe y-registerinhalt in eine"
330 print"speicherstelle."
340 print"dies sind nun die entsprechenden pokes."
350 print"wir brauchen noch einen befehl und dann"
360 print"koennen wir schon unser erstes pro-"
370 print"gramm schreiben. dieser befehl lautet"
380 print"rts[146] und er bedeutet auf deutsch kehr"
390 print"zurueck.in unserem fall waere das ins"
400 print"basic zurueck."
410 printtab(14)"taste druecken"
420 print""tab(18)"-2-"
430 gosub 250 : on a goto 440 , 100
440 rem
450 rem -- seite 3 --
460 rem
470 print"[147]-------das-erste-programm---------------"
480 print"wir wollen nun unser erstes programm"
490 print"schreiben."
500 print"lda #$01 ; 1 in den akku laden"
510 print"sta $d021 ; akku inhalt nach $d021"
520 print"rts ; zurueck ins basic"
530 print"was bewirkt dieses programm ?"
540 print"der erste befehl laed eine 1 in den "
550 print"akku.der zweite befehl schreibt den "
560 print"akku-inhalt in die speicherstelle $d021"
570 print""tab(14)"taste druecken"
580 print""tab(18)"-3-"
590 gosub 250 : on a goto 600 , 300
600 rem
610 rem -- seite 4 --
620 rem
630 print"[147]$d021 (das zeichen $"
640 print"steht fuer hexadezimalzahlen) bedeutet"
650 print"in unserer dezimalen schreibweise 53281."
660 print"wissen sie, was diese speicherstelle"
670 print"fuer eine aufgabe hat ?nein, dann will"
680 print"ich es ihnen sagen. sie gibt die "
690 print"aktuelle hintergrundfarbe des"
700 print"bildschirms an und eine eins bedeutet"
710 print"die farbe weiss. mit unserem programm "
740 print""tab(14)"taste druecken"
750 print""tab(18)"-4-"
760 gosub 250 : on a goto 770 , 440
770 rem
780 rem -- seite 5 --
790 rem
800 print"[147]aendern wir die hintergrundfarbe in"
810 print"weiss."
820 print"druecken sie eine taste und"
830 print"das programm wird ausgefuehrt"
840 gosub 250
850 poke 53281 , 1 : for i = 1 to 300 : next
860 print"sehen sie. druecken sie jetzt wieder"
870 print"eine taste und der ausgangszustand wird"
880 print"wieder hergestellt."
890 gosub 250 : poke 53281 , 11 : for i = 1 to 300 : next
900 print"dies funktioniert doch prima, aber "
910 print"weiter mit neuen befehlen."
920 print"inx[146] = erhoeht den aktuellen wert des"
930 print"x-registers um eins."
940 print""tab(14)"taste druecken"
950 print""tab(18)"-5-"
960 gosub 250 : on a goto 970 , 600
970 rem
980 rem -- seite 6 --
990 rem
1000 print"[147]iny[146] = erhoeht den aktuellen wert des "
1010 print"y-registers um eins."
1020 print"inc[146] (adresse) = erhoeht eine bestimmte"
1030 print"speicherstelle um eins."
1040 print"jetzt das gegenteil :"
1050 print"dex[146] = zieht vom x-register eins ab"
1060 print"dey[146] = zieht vom y-register eins ab"
1070 print"dec[146] (adresse) = zieht von einer
1080 [153]"speicherstelle eins ab"
1130 [153]""[163]18)"-6-"
1140 [141] 250 : [145] a [137] 1150 , 770
1150 [143]
1160 [143] -- seite 7 --
1170 [143]
1200 [153]"load------jetzt-unser-zweites-programm------"
1210 [153]"dec $d021 : speicherstelle minus eins."
1220 [153]"rts : kehrt zurueck ins basic."
1230 [153]"dieses programm zieht von der speicher-"
1240 [153]"stelle hex.$d021, dez.53281 eins ab."
1250 [153]"dies bedeutet, die farbe, die jetzt"
1260 [153]"dargestellt wird, wird um eins er-"
1270 [153]"niedrigt.in unserem fall waere dies"
1390 [153]""[163]14)"taste druecken"
1400 [153]""[163]18)"-7-" : [141] 250 : [145] a [137] 1410 , 970
1410 [143]
1420 [143] -- seite 8 --
1430 [143]
1440 [153]"loadaus dunkelgrau in hell-rot. druecken"
1450 [153]"sie eine taste und das programm wird"
1460 [153]"ausgefuehrt."
1462 [141] 250
1464 [151] 53281 ,[194](53281)[171]1
1470 [153]"druecken sie wieder eine taste und der"
1480 [153]"ausgangszustand wird wieder hergestellt."
1490 [141] 250
1500 [151] 53281 , [194] (53281) [170]1
1510 [153]"sie sehen, maschinensprache ist doch"
1520 [153]"ganz einfach."
1530 [153]"in den naechsten folgen wollen wir uns"
1540 [153]"mit etwas hoeherer programmierkunst"
1550 [153]"befassen, aber keine angst, so schwer"
1560 [153]""[163]14)"taste druecken"
1570 [153]""[163]18)"-8-" : [141] 250 : [145] a [137] 1580 , 1150
1580 [143]
1590 [143] -- seite 9 --
1600 [143]
1620 [153]"loadwird es nicht. ich meine,wenn sie es bis"
1630 [153]"hier geschafft haben,werden sie den rest"
1640 [153]"auch noch verstehen."
1650 [153]"geben sie wieder ihr eingabegeraet ein"
1660 a$ [178] ""
1670 [133] "dwait oder fwait";a$
1675 [139] a$ [178] "z" [167] [137] 1410
1680 [139] a$ [178] "f" [167] f[178]8 : [137]1710
1685 [139] a$ [178] "" [167] [128]
1690 [139] a$ [178] "d" [167] f[178]1 : [137]1710
1700 [137] 1660
1710 [151] 2 , f : [151] 45 ,3 : [151] 46 , 8 : [147] "lektion 4" , [194] (2)